//package com.suse.warmstill.autho;
//
//
//import org.springframework.messaging.Message;
//import org.springframework.messaging.MessageChannel;
//import org.springframework.messaging.simp.stomp.StompCommand;
//import org.springframework.messaging.simp.stomp.StompHeaderAccessor;
//import org.springframework.messaging.support.ChannelInterceptor;
//import org.springframework.messaging.support.MessageHeaderAccessor;
//import org.springframework.util.LinkedMultiValueMap;
//
//public class CustomerInterceptor implements ChannelInterceptor {
//
//    // 通过方法获取消息
//    @Override
//    public Message<?> preSend(Message<?> message, MessageChannel channel) {
//        // 获取用户状态信息，是否发送消息
//        StompHeaderAccessor accessor = MessageHeaderAccessor.getAccessor(message, StompHeaderAccessor.class);
//
//        // 判断是否建立连接
//        if (accessor.getCommand().equals(StompCommand.CONNECT)) {
//            // 获取UserInfo信息的时候，一定在建立连接的基础上
//            LinkedMultiValueMap<String, String> headers = (LinkedMultiValueMap<String, String>) message.getHeaders().get("nativeHeaders");
//
//            // 获取用户名以及房间号,客户端需要在消息头中传递username，roomId
//            String username = headers.get("username").get(0);
//            String roomId = headers.get("roomId").get(0);
//
//            // 封装
//            UserInfo userInfo = new UserInfo();
//            userInfo.setUsername(username);
//            userInfo.setRoomId(roomId);
//
//            String sessionId = accessor.getSessionId();
//            System.out.println("sessionId---" + sessionId);
//
//            Datas.sessionUserInfo.put(sessionId, userInfo);
//        }
//
//
//
//
//
//
//        // 判断用户聊天内容是否合法
//        // 判断是否建立连接
//        if (accessor.getCommand().equals(StompCommand.CONNECT)) {
//            // 获取连接message
//            Object payload = message.getPayload();
//            System.out.println("payload：" + payload);
//            // 进一步获取聊天内容....
//        }
//        return message;
//    }
//}
